op 	 {
  name: "SparseCrossV2"
  input_arg {
    name: "indices"
    type: DT_INT64
    number_attr: "N"
  }
  input_arg {
    name: "values"
    type_list_attr: "sparse_types"
  }
  input_arg {
    name: "shapes"
    type: DT_INT64
    number_attr: "N"
  }
  input_arg {
    name: "dense_inputs"
    type_list_attr: "dense_types"
  }
  input_arg {
    name: "sep"
    type: DT_STRING
  }
  output_arg {
    name: "output_indices"
    type: DT_INT64
  }
  output_arg {
    name: "output_values"
    type: DT_STRING
  }
  output_arg {
    name: "output_shape"
    type: DT_INT64
  }
  attr {
    name: "N"
    type: "int"
    has_minimum: true
  }
  attr {
    name: "sparse_types"
    type: "list(type)"
    has_minimum: true
    allowed_values {
      list {
        type: DT_INT64
        type: DT_STRING
      }
    }
  }
  attr {
    name: "dense_types"
    type: "list(type)"
    has_minimum: true
    allowed_values {
      list {
        type: DT_INT64
        type: DT_STRING
      }
    }
  }
}
